# $Id$
# Maintainer: Antonio Rojas <arojas@archlinux.org>
# Maintainer: Felix Yan <felixonmars@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Gustavo Alvarez <sl1pkn07@gmail.com>
# Contributor: Balló György <ballogyor+arch at gmail dot com>

pkgbase=marble
pkgname=(marble-data marble-common marble-qt marble)
pkgver=17.08.1
pkgrel=1
pkgdesc="Desktop Globe"
arch=(i686 x86_64)
url="https://www.kde.org/applications/system/marble"
license=(GPL)
makedepends=(extra-cmake-modules gpsd kdoctools knewstuff kparts krunner libwlocate phonon-qt5
             plasma-workspace qt5-serialport qt5-tools qt5-webkit shapelib)
source=("https://download.kde.org/stable/applications/$pkgver/src/$pkgbase-$pkgver.tar.xz"{,.sig})
sha256sums=('a8285ec2b1fb055f47bb7ddb86114077760887353d1a4f98b2500235ea199fca'
            'SKIP')
validpgpkeys=(CA262C6C83DE4D2FB28A332A3A6A4DB839EAA6D7  # Albert Astals Cid <aacid@kde.org>
              F23275E4BF10AFC1DF6914A6DBD2CE893E2D1C87) # Christoph Feck <cfeck@kde.org>

prepare() {
  mkdir -p build
}

build() {
  cd build
  cmake ../$pkgbase-$pkgver \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DCMAKE_INSTALL_LIBDIR=lib \
    -DKDE_INSTALL_SYSCONFDIR=/etc \
    -DQT_PLUGINS_DIR=lib/qt/plugins \
    -DBUILD_TESTING=OFF \
    -DBUILD_MARBLE_EXAMPLES=OFF \
    -DBUILD_MARBLE_TESTS=OFF \
    -DMOBILE=OFF
  make
}

package_marble-data() {
  pkgdesc='Data for Marble'
  depends=(hicolor-icon-theme)
  conflicts=(kdeedu-marble)

  cd build
  make -C doc DESTDIR="$pkgdir" install
  make -C data DESTDIR="$pkgdir" install
}

package_marble-common() {
  pkgdesc='Common libraries and plugins for Marble'
  depends=(marble-data qt5-svg qt5-webkit phonon-qt5)
  optdepends=('gpsd: GPS based geolocation'
              'libwlocate: WLAN based geolocation'
              'qt5-serialport: APRS plugin'
              'shapelib: SHP plugin')
  conflicts=(kdeedu-marble libastro libmarble4)
  replaces=(libastro)

  cd build
  make DESTDIR="$pkgdir" install
  rm -r "$pkgdir"/usr/share/{doc,icons,marble,mime,config.kcfg,kxmlgui5,metainfo,plasma} \
        "$pkgdir"/usr/bin \
        "$pkgdir"/etc \
        "$pkgdir"/usr/lib/qt/{qml,plugins/*.so} \
        "$pkgdir"/usr/share/applications/{marble_geo.desktop,marble_worldwind.desktop,org.kde.marble*.desktop} \
        "$pkgdir"/usr/share/kservices5/{marble_part.desktop,plasma*} \
        "$pkgdir"/usr/share/locale/*/LC_MESSAGES/*.mo
}

package_marble-qt() {
  pkgdesc+=' (Qt version)'
  depends=(marble-common)

  cd build
  make -C src/apps/marble-qt DESTDIR="$pkgdir" install
}

package_marble() {
  depends=(marble-common knewstuff kparts)
  optdepends=('krunner: Krunner plugin')
  conflicts=(kdeedu-marble)
  replaces=(kdeedu-marble)
  groups=(kde-applications kdeedu)

  cd build
  make -C src/apps/marble-kde DESTDIR="$pkgdir" install
  make -C src/plasma DESTDIR="$pkgdir" install
  make -C src/plasmarunner DESTDIR="$pkgdir" install
  make -C src/thumbnailer DESTDIR="$pkgdir" install
  rm -r "$pkgdir"/usr/share/icons
}
